/** 
* 文 件 名:MealGuideActivity.java
* Copyright (C) 2007-2012:杭州希禾信息技术有限公司 版权所有 
* 创 建 人:WuHongJie
* 日    期:2012-4-12 下午20:14:26
* 修 改 人: 
* 日   期:
* 修改描述:
* 描   述:TODO
*/
package net.seehealth.healthpad.ui;

import java.util.HashMap;
import java.util.Map;

import net.seehealth.healthpad.R;
import android.os.Bundle;
import android.text.Html;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;

/**
 * 
 * @className MealGuideActivity
 * @author wuhongjie
 * @description 膳食指导页面
 * @date 2012-4-13 下午7:43:22
 */
public class MealGuideActivity extends BaseActivity {
	
	/** 标题 **/
	TextView mTitleLabel;
	
	/** 当前体重label **/
	TextView mNowWeightLabel;
	
	/** 目标体重label **/
	TextView mTargetWeightLabel;
	
	/** 标准摄入量label **/
	TextView mStandardIntakeLabel;
	
	/** 今日摄入label **/
	TextView mTodayIntakeLabel;
	
	/** 少摄入label **/
	TextView mLessIntakeLabel;
	
	/** 每日一菜文本框 **/
	TextView mDailyDishText;
	
	/** 饮食建议文本框 **/
	TextView mDishAdviceText;
	
	/** 每日一菜 **/
	LinearLayout mDailyDishContent; 
	
	/** 饮食建议 **/
	LinearLayout mMealDishAdvice; 
	
	/** 饮食禁忌 **/
	LinearLayout mMealDishInhibition; 
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		initData();
		initView();

	}

	/**
	 * 初始化数据
	 */
	private void initData() {

	}

	/**
	 * 初始化视图
	 */
	private void initView() {

		setContentView(R.layout.pop_gridview_meal_guide);
		
		mTitleLabel = (TextView) findViewById(R.id.tv_common_title);
		mTitleLabel.setText("膳食指导");
		
//		LayoutParams p = getWindow().getAttributes();  	// 获取对话框当前的参数值
//		p.height = (int) (Constants.Screen.HEIGHT * 1.0);   	// 高度设置为屏幕的1.0
//		p.width = (int) (Constants.Screen.WIDTH * 1.0);    // 宽度设置为屏幕的1.0

		// 关闭按钮
//		((ImageButton)findViewById(R.id.pop_close_btn)).setOnClickListener(mClickListener);

		setLabel();
		
		mDailyDishText = (TextView) findViewById(R.id.tv_meal_daily_dish_content_text);
		mDailyDishText.setText("1.将五花肉放入锅中煮大约10分钟左右，最好在锅中放几粒花椒同煮\n"
				 + "1.将五花肉放入锅中煮大约10分钟左右，最好在锅中放几粒花椒同煮\n"
				 + "1.将五花肉放入锅中煮大约10分钟左右，最好在锅中放几粒花椒同煮\n"
				 + "1.将五花肉放入锅中煮大约10分钟左右，最好在锅中放几粒花椒同煮\n"
				 + "1.将五花肉放入锅中煮大约10分钟左右，最好在锅中放几粒花椒同煮");
		
		mDishAdviceText = (TextView) findViewById(R.id.tv_meal_dish_advice_content);
		mDishAdviceText.setText("坚持吃早餐             避免吃饭时喝水\n"
				+ "坚持吃早餐             避免吃饭时喝水\n"
				+ "坚持吃早餐             避免吃饭时喝水\n"
				+ "坚持吃早餐             避免吃饭时喝水\n"
				+ "坚持吃早餐             避免吃饭时喝水");
		
		mDailyDishContent = (LinearLayout) findViewById(R.id.ll_meal_daily_dish_content);
		mDailyDishContent.getBackground().setAlpha(153);
		mMealDishAdvice = (LinearLayout) findViewById(R.id.ll_meal_dish_advice);
		mMealDishAdvice.getBackground().setAlpha(153);
		mMealDishInhibition = (LinearLayout) findViewById(R.id.ll_meal_dish_inhibition);
		mMealDishInhibition.getBackground().setAlpha(153);
	}

	/**
	 * 初始化标签上的数据
	 */
	private void setLabel(){
		Map<String, String> map = new HashMap<String, String>();
		
		map.put("%", getCountStyle("70"));
		setLabelText(mNowWeightLabel, R.id.tv_meal_state_now_weight_text, map);
		
		map.put("%", getCountStyle("68"));
		setLabelText(mTargetWeightLabel, R.id.tv_meal_state_target_weight_text, map);
		
		map.put("%", getCountStyle("1824"));
		setLabelText(mStandardIntakeLabel, R.id.tv_meal_state_standard_intake_text, map);
		
		map.put("%", getCountStyle("1900"));
		setLabelText(mTodayIntakeLabel, R.id.tv_meal_state_today_intake_text, map);
		
		map.put("@", getLessStyle("少"));
		map.put("%", getCountStyle("76"));
		setLabelText(mLessIntakeLabel, R.id.tv_meal_state_less_intake_text, map);
	}
	
	/**
	 * 设置Label内容
	 * @param tv 标记视图
	 * @param layoutId 标记布局
	 * @param replaceMap 替换集合
	 */
	private void setLabelText(TextView tv, int layoutId, Map<String, String> replaceMap){
		tv = (TextView) findViewById(layoutId);
		String label = tv.getText().toString();
		for (Map.Entry<String, String> m : replaceMap.entrySet()) {
			label = label.replace(m.getKey(), m.getValue());
		}
		tv.setText(Html.fromHtml(label));
		replaceMap.clear();
	}
	
	/**
	 * 点击事件
	 */
	View.OnClickListener mClickListener = new View.OnClickListener() {

		@Override
		public void onClick(View v) {
			switch (v.getId()) {
			case R.id.pop_close_btn:		// 关闭按钮
				finish();
				overridePendingTransition(R.anim.popshow_anim, R.anim.pophidden_anim);
				break;
			default:
				break;
			}
		}
	};
	
	/**
	 * 条数Label样式
	 * @param count
	 * @return
	 */
	private String getCountStyle(String count){
		return "<i><u><font color=#ff9900 size='24'>" + count + "</font></u></i>";
	}
	
	/**
	 * 少Label样式
	 * @param count
	 * @return
	 */
	private String getLessStyle(String count){
		return "<font color=#ff3300 size='24'>" + count + "</font>";
	}
	
}
